################################### Руководство по управлению доступом ################################### ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Назначение и общий функционал управления доступом ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ **Управление доступом** включает в себя добавление для ролей пользователей Системы необходимых прав доступа к ресурсам Системы или ограничение в этих правах. Роли пользователей указаны в LDAP Пользователя, под которым осуществляется вход в Систему. LDAP - открытый протокол, используемый для хранения и извлечения данных из иерархической структуры каталогов. Используется для хранения информации об организации и ее сотрудниках (пользователях Системы). .. note:: Список существующих ролей пользователей необходимо уточнить у Администратора LDAP. Роль «any» по умолчанию есть у всех пользователей. Редактор прав доступа открывается по кнопке «Управление доступом» пункта «Администрирование» в сайдбаре Системы (:numref:`6Pic1`). .. _6Pic1: .. figure:: Img/Access_sidebar.png :scale: 80 % :align: center *Кнопка «Управление доступом»* .. note:: Название пунктов меню сайдбара и расположение этих пунктов требуется уточнить в документации на Систему, так как они могут отличаться в зависимости от настроек Системы. Редактор прав доступа также открывается из интернет-браузера по адресу: /admin/permissions. При нажатии на кнопку «Управление доступом» либо после перехода по адресу, указанному выше, в рабочей области Системы отобразится таблица прав доступа для соответствующих ролей, кнопки «Добавить» и «Сохранить» (:numref:`6Pic2`). .. _6Pic2: .. figure:: Img/Access.png :scale: 80 % :align: center *Редактор прав доступа* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Структура таблицы прав доступа ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Запись в таблице прав доступа имеет следующие поля: *Роль* Текстовое поле. Указывается роль Пользователя, для которой добавлены права доступа, написанные в колонке «Wildcard». *Доступ* Элемент интерфейса «Переключатель». В зависимости от состояния (включен/выключен) показывает, есть ли у данной роли права доступа, указанные в поле «Wildcard», или нет. *Wildcard* Текстовое поле. Указываются права доступа для роли. Формат заполнения поля «Wildcard» следующий: `*:{http-метод}:{URL ресурса}`. * подстрока до первого знака «:» сейчас не используется. * {http-метод} - указывается один из методов GET, POST, PATCH, PUT, DELETE (* - любой метод). * {URL ресурса} - указывается URL ресурса, к которому настраивается доступ (* - любой ресурс). Примеры прав доступа к ресурсам: * `*:*:*` - полный доступ ко всем ресурсам. * `*:GET:*` - любой ресурс, запрошенный методом GET. * `*:*:/preferences` - запрос с любым методом к ресурсу, начинающемуся с `/preferences`, т.е. `/preferences` или `/preferences/...` . * `*:POST:/api` - POST-запросы к `/api` или `/api/...` . *Заголовки* Текстовое поле. Сейчас не используется. *Описание* Текстовое поле. Указывается описание добавленных прав доступа. Не является обязательным. *Дата изменения* В поле автоматически устанавливаются дата и время последнего изменения записи таблицы прав доступа в формате ДД.ММ.ГГГГ, ЧЧ:ММ:СС. Поле недоступно для редактирования. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Добавление прав доступа для роли ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Добавление прав доступа для роли выполняется по кнопке «Добавить» в Редакторе прав доступа (:numref:`6Pic2`). При нажатии на эту кнопку в таблице прав доступа появляется пустая строка, которую необходимо заполнить. В поле «Роль» нужно указать роль, для которой добавляются права доступа. В поле «Wildcard» нужно указать права доступа для данной роли. Поля «Заголовки» и «Описание» необязательны для заполнения. В поле «Дата изменения» указывается дата последнего изменения данной записи таблицы прав доступа (:numref:`6Pic3`). Сохранение прав доступа для роли выполняется по кнопке «Сохранить» в Редакторе прав доступа (:numref:`6Pic3`). .. _6Pic3: .. figure:: Img/New_access.png :scale: 80 % :align: center *Новая запись в таблице прав доступа* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Удаление прав доступа у роли ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Удаление прав доступа у роли означает удаление из таблицы прав доступа строки с указанием соответствующих прав данной роли. Удаление выполняется по кнопке «Удалить» в таблице прав доступа (:numref:`6Pic4`). .. _6Pic4: .. figure:: Img/Access_del.png :scale: 80 % :align: center *Удаление прав доступа у роли* При нажатии на эту кнопку строка с указанием соответствующих прав данной роли будет удалена.